package com.pearadmin.common.nucleus.base;


import com.github.pagehelper.PageInfo;
import com.pearadmin.common.nucleus.domain.response.Result;
import com.pearadmin.common.nucleus.domain.response.TableVO;
import com.pearadmin.common.nucleus.domain.response.TreeVO;

public class BaseController {

    public TreeVO TreeData(Object data){
        TreeVO treeVO = new TreeVO();
        treeVO.setCode(0);
        treeVO.setMsg("请求成功");
        treeVO.setData(data);
        return treeVO;
    }

    // 全局接口统一处理响应
    public  TableVO PageTable(Object data,long count){
        TableVO tableVO = new TableVO();
        tableVO.setCode(0);
        tableVO.setCount(count);
        tableVO.setData(data);
        return tableVO;
    }

    public  TableVO PageTable(PageInfo pageInfo){
        TableVO tableVO = new TableVO();
        tableVO.setCode(0);
        tableVO.setCount(pageInfo.getTotal());
        tableVO.setData(pageInfo.getList());
        return tableVO;
    }

    public TableVO DataTable(Object data){
        TableVO tableVO = new TableVO();
        tableVO.setCode(0);
        tableVO.setData(data);
        return tableVO;
    }

    public TableVO TreeTable(Object data){
        TableVO tableVO = new TableVO();
        tableVO.setCode(0);
        tableVO.setData(data);
        return tableVO;
    }

    public Result success(){
        return Result.success();
    }

    public Result success(String msg){
        return Result.success(msg);
    }

    public Result success(Object data){
        return Result.success(data);
    }

    public Result success(Integer code,String msg){ return Result.success(code,msg); }

    public Result warming(String msg){ return Result.warming(msg);}

    public Result failure() {
        return Result.failure();
    }

    public Result failure(String msg) {
        return Result.failure(msg);
    }

    public Result failure(Integer code,String msg){
        return  Result.failure(code,msg);
    }

    public Result choice(Boolean b){
        if(b){
            return success();
        }else{
            return failure();
        }
    }

    public Result choice(Boolean b,String success,String failure){
        if(b){
            return success(success);
        }else{
            return failure(failure);
        }
    }

}
